package org.jeecg.modules.register.entity;

import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @Description: subject_member_level
 * @Author: jeecg-boot
 * @Date:   2024-11-10
 * @Version: V1.0
 */
@Data
@TableName("subject_member_level")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="subject_member_level对象", description="subject_member_level")
public class SubjectMemberLevel implements Serializable {
    private static final long serialVersionUID = 1L;

    /**id*/
    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "id")
    private String id;

    @Excel(name = "法人名称", width = 15)
    @ApiModelProperty(value = "法人名称")
    @TableField(exist = false)
    private java.lang.String legalName;


    @TableField(exist = false)
    private java.lang.Integer pageNo;
    /**大小*/
    @TableField(exist = false)
    private java.lang.Integer pageSize;

    /**主体代码*/
    @Excel(name = "主体代码", width = 15)
    @ApiModelProperty(value = "主体代码")
    private String legalCode;
    /**用户等级 1 2 3 4 5 */
    @Excel(name = "用户等级", width = 15, dicCode = "regist_user_level")
    @ApiModelProperty(value = "用户等级 1 2 3 4 5 ")
    @Dict(dicCode = "regist_user_level")
    private String memberLevel;
    /**有效期*/
    @Excel(name = "有效期", width = 15, format = "yyyy-MM-dd")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "有效期")
    private Date memberTimeStart;
    /**memberTimeEnd*/
    @Excel(name = "memberTimeEnd", width = 15, format = "yyyy-MM-dd")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "memberTimeEnd")
    private Date memberTimeEnd;

    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "createTime")
    private Date createTime;

    /**会员状态 0 待审核 1 起效 2 失效*/
    @Excel(name = "会员状态", width = 15, dicCode = "regist_user_state")
    @ApiModelProperty(value = "会员状态 0 待审核   1 起效 2 失效")
    @Dict(dicCode = "regist_user_state")
    private String memberState;

    /**附件*/
    @Excel(name = "附件", width = 15)
    @ApiModelProperty(value = "附件")
    private String imagePath;
    /**审核人*/
    @Excel(name = "审核人", width = 15)
    @ApiModelProperty(value = "审核人")
    private String checkUser;
    /**审核时间*/
    @Excel(name = "审核时间", width = 15, format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "审核时间")
    private Date checkTime;
    /**备注*/
    @Excel(name = "备注", width = 15)
    @ApiModelProperty(value = "备注")
    private String remark;
}
